package com.blog.cmrpersonalblog.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.blog.cmrpersonalblog.entity.NotificationSettings;
import org.apache.ibatis.annotations.Param;

/**
 * 通知设置Mapper接口
 */
public interface NotificationSettingsMapper extends BaseMapper<NotificationSettings> {

    /**
     * 根据用户ID查询通知设置
     * @param userId 用户ID
     * @return 通知设置
     */
    NotificationSettings selectByUserId(@Param("userId") Long userId);

    /**
     * 根据用户ID更新通知设置
     * @param settings 通知设置
     * @return 影响行数
     */
    int updateByUserId(@Param("settings") NotificationSettings settings);

    /**
     * 初始化用户通知设置（使用默认值）
     * @param userId 用户ID
     * @return 影响行数
     */
    int initUserSettings(@Param("userId") Long userId);
}

